/**
 * @description: JavaScript Date 工具荟萃
 * @param {*}
 * @return {*}
 * @author: liejiayong(809206619@qq.com)
 * @Date: 2021-10-15 16:34:56
 */

/**
 * 获取当月总天数
 * @param {Number} year 年
 * @param {Number} month 月
 */
export function getMonthLen(year, month) {
  return new Date(year, month, 0).getDate();
}

/**
 * 获取本日所在一周的日期
 * @param {number} y 年 
 * @param {number} m 月
 * @param {number} d 日
 * @param {boolean} isFirstDay 是否从周日开始算
 *         *
 *日 一 二 三 四 五 六 
 *29 30 1  2  3  4  5 
 * 3 + 7 = 10  3
 * 3 + 6 = 9   2
 * @returns 
 */
export function getWeekDate(y,m,d, isFirstDay) {
  var diff = 6+ isFirstDay?1:0 // 从周一开始为:6,从周日开始为:7
  var new_Date =y&&m&&d?new Date(y,m,d): new Date();
  var timesStamp = new_Date.getTime();
  var currentDay = new_Date.getDay();
  var dates = [];
  for (var i = 0; i < 7; i++) {
    var das = new Date(timesStamp + 24 * 60 * 60 * 1000 * (i - ((currentDay + diff) % 7))).toLocaleDateString();
    das.replace(/[年月]/g, ".").replace(/[日上下午]/g, "").replace(/\//g, "-");
    dates.push(das);
  }

  return {
    start: dates[0],
    end: dates[dates.length - 1],
    dates: dates
  };
}
